#pragma once
#include <string>
using std::string;

class Window
{
public:
    Window(int formId);
    ~Window(void);
    
    static void msgbox(Window* owner = nullptr, const string& message = "", const string& title = "");

    void* handle() const;
    void show();
	void close();

protected:
	virtual int proc(unsigned int msg, void* wparam, void* lparam);
	virtual void init() = 0;

protected:
    void* _handle;	// HWND
	int _formId;	// FORMID
};

